#pragma once
#include <vector>
#include "Card.h"
#include <iostream>

using namespace std;
class Hand
{
private:
	vector<Card> cardList;
	int pair1Pos;
	int pair2Pos;
	int threeKindPos;
	int fourKindPos;
public:
	vector<Card> getCardList(){return cardList;}
	int GetPair1Pos(){return pair1Pos;}
	int GetPair2Pos(){return pair2Pos;}
	int GetThreeKindPos(){return threeKindPos;}
	int GetFourFindPos(){return fourKindPos;}
	
	void AddCard(Card card){cardList.push_back(card);}
	bool isFlush();
	bool isFourKind();
	bool isThreeKind();
	bool isStraight();
	void Print();
	int CountNumPair();
	int CountPoint();
	int CompareTo(Hand hand);
	void Sort();
	Hand(void);
	~Hand(void);
	void Swap(Card &card1, Card& card2);
	void RemoveCards(vector<int> index);
	string toString();
	int getIndexOfFirstPair();
	int getIndexOfSecondPair();
	int getIndexOfThreeKind();
	int getIndexOfFourKind();
	Card getCardByIndex(int index);
};

